package com.sloth.bear.dto.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.sloth.bear.dto.base.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 文件索引实体类
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("file_index")
public class FileIndex extends BaseEntity {
    
    /**
     * 文件完整路径
     */
    @TableField("file_path")
    private String filePath;
    
    /**
     * 文件名
     */
    @TableField("file_name")
    private String fileName;
    
    /**
     * 文件大小（字节）
     */
    @TableField("file_size")
    private Long fileSize;
    
    /**
     * 文件类型/扩展名
     */
    @TableField("file_type")
    private String fileType;
    
    /**
     * 文件最后修改时间
     */
    @TableField("file_modified_time")
    private Long fileModifiedTime;
    
    /**
     * 文件所在目录
     */
    @TableField("directory")
    private String directory;
    
    /**
     * 文件大小（可读格式）
     */
    @TableField("file_size_readable")
    private String fileSizeReadable;

    /**
     * 当前播放时间（秒）
     */
    @TableField("`current_time`")
    private Double currentTime;

    /**
     * 视频总时长（秒）
     */
    private Double duration;

    /**
     * 播放进度百分比（0-100）
     */
    private Double progressPercent;

    /**
     * 视频标题（刮削获取）
     */
    private String title;

    /**
     * 视频编号（刮削获取）
     */
    private String code;

    /**
     * 演员名称（刮削获取）
     */
    private String performer;

    /**
     * 封面图片URL（刮削获取）
     */
    private String cover;
}